对于熟悉 Python 的人,应该了解 Python 之所以简单,易学,是因为包含了很多第三方的库。
同样 C# 也有一些很有用的库,今天我们来看一个 C# 的库,通过该库,你可以实现 ssh 的连接,以及一些通过 ssh 的操作,比如上传下载文件,等等。
这个库叫做 SSH.NET,你可以在这里找到相关源码:
首先我们来看一下,怎么在 visual studio 2019 上面添加库的软件包。
打开 visual studio 2019,新建一个 console application,然后右击右边 Solution 框中的 “Dependencies”,选择 “Manage NuGet Package”,然后在左边的 NuGet 窗口,选择 Browse 窗口中,输入 “ssh.net", 找到 SSH.NET,点击安装图标,进行下载安装(你可以在 Installed 窗口,验证安装):
安装完成后,就可以来编写我们的代码了:
using System;
using Renci.SshNet;
namespace ssh
{
class Program
{
static void Main(string[] args)
{
ConnectionInfo conInfo = new ConnectionInfo("192.168.1.12", 22, "test", new AuthenticationMethod[] // ssh 的连接信息
{
// ssh 连接的用户名密码
new PasswordAuthenticationMethod("test", "Shanghai2010")
});
using (SshClient client = new SshClient(conInfo)) // 创建一个连接
{
client.Connect(); // 建立连接
var ouput = client.RunCommand("ls -l"); // 输入需要运行的命令,并赋值给一个变量
Console.WriteLine(ouput.Result.ToString()); // 调用 Result 属性,输出命令结果
client.Disconnect(); // 断开连接
}
}
}
}
运行结果: